package com.example.mall.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.example.mall.domain.User;

import com.example.mall.dto.RegisterDto;
import com.example.mall.dto.UserDto;
import com.example.mall.query.PageDTO;
import com.example.mall.query.UserQuery;

import java.util.List;

/**
 * <p>
 * 用户表 服务类
 * </p>
 *
 * @author whale
 * @since 2025-05-14
 */
public interface IUserService extends IService<User> {

    /**
     * 注册
     *
     * @param registerDto
     * @return
     */
    void register(RegisterDto registerDto);

    //分页查询用户表信息
    PageDTO<UserDto> queryPage(UserQuery userQuery);

    //根据id查询用户表信息
    User queryUserById(Long id);

    //查询全部用户表信息
    List<User> queryUserList();

    //新增用户表
    void insert(UserDto userDto);

    //修改用户表信息
    void update(UserDto userDto);

    //删除用户表信息
    void delete(Long id);

    //批量删除用户表信息
    void deleteBatch(List<Long> ids);
}
